package com.softeem.score.manager.mapper;

import com.softeem.score.model.dto.StudentDto;
import com.softeem.score.model.entity.school.Student;
import com.softeem.score.model.vo.school.StudentVo;
import org.apache.ibatis.annotations.Param;

import java.util.List;

/**
 * <p>
 * Mapper 接口
 * </p>
 *
 * @author zhu
 * @since 2024-02-14
 */
public interface StudentMapper {

    List<StudentVo> findByPage(StudentDto studentDto);

    void deleteById(Long studentId);

    void updateStudent(Student student);

    void saveStudent(Student student);

    Student findById(@Param("id") Long id);

    Integer findCountByClassesId(@Param("classesId") Long classesId);

    void deleteStudents(@Param("studentIds") List<Long> studentIds);

    List<Long> findStudentIdsByClassesId(Long classesId);

    Integer findStudentIdsByStudentNumber(String studentNumber);

    void deleteByStudentNumber(String studentNumber);

    Student findByStudentNumber(String username);
}
